1
Construindo a Base: Interação da CLI em Rust
AI034Lesson 2
00:00

O Diálogo da Programação

Pense na diferença entre um simples "Olá, mundo!" e um Jogo de Adivinhação como a diferença entre um monólogo e um diálogo. Num monólogo, o programa fala e encerra. Num diálogo, o programa faz uma pergunta, abre um ouvinte e pausa seu relógio interno até que o usuário responda.

1. O Pré-Classe e Escopo

Rust importa automaticamente um pequeno conjunto de itens chamados de pré-classe em todos os programas. No entanto, para tarefas especializadas como entrada do terminal, devemos trazer explicitamente a Biblioteca Padrão para o escopo usando use std::io;. Isso pontua a lacuna entre a lógica interna do seu programa e o ambiente externo.

TerminalSaída PadrãoPrograma Rustescopo main()println! (Macro)io::stdin() (Entrada)

2. Macros vs Funções

Você notará println! termina com um ponto de exclamação. Isso o identifica como um macro. Diferentemente das funções regulares, os macros podem lidar com um número variável de argumentos e realizar interpolação de strings (preenchendo {palpite}) em tempo de compilação.

3. O Ciclo de Vida Interativo

Quando você executa cargo run, o programa inicializa, alcança io::stdin().read_line(), e suspende. Espera que o usuário pressione 'Enter', depois empacota essa entrada em um Resultado tipo para lidar com falhas potenciais de hardware de forma segura.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>